#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QImage>
#include "ffmpegvideo.h"
#include "qwidget_playvideo.h"
#include <QThread>
#include <QProgressDialog>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

private:
    Ui::MainWindow *ui;
    QWidget_PlayVideo * m_Widget_PlayVideo; ///< 播放界面 包含视频源 和 视频播放线程

    FFmpegVideo * m_FFmpegProcessing;       ///< 视频类  新建一个用于视频处理 - 为了不与播放冲突
    QThread * m_ProcessingThread;           ///< 处理线程
    QProgressDialog *progressDialog;        ///< 弹出进度条

    /**
     * @brief 打开视频文件 (默认自动播放)
     */
    void openVideo();

    /**
     * @brief 另存为，根据后缀调用不同保存函数
     */
    void saveVideo();
};

#endif // MAINWINDOW_H
